package com.ruoyi.system.kysh.service;

import com.ruoyi.system.kysh.entity.TaskPlan;
import com.ruoyi.system.kysh.entity.dto.DailyInfDto;
import com.ruoyi.system.kysh.entity.dto.TaskPlanDateDto;
import com.ruoyi.system.kysh.entity.dto.TaskPlanDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;

@Service
public interface TaskPlanService {
    TaskPlanDateDto selectByTaskIdAndTaskName(String ticketNum, String ticketName, int page, int pageSize);

    TaskPlan selectDetailByTicketNum(String ticketNum);

    boolean deleteByTicketNum(String ticketNum);

    boolean saveTaskPlan(TaskPlan taskPlan);

    boolean updateTaskPlan(TaskPlan taskPlan);

    TaskPlan selectByTaskId(Long id);

    void updateTaskStatus(Long id, String status);

    List<TaskPlan> selectByUserId(Long userId);

    TaskPlanDto selectTaskInfDetailByTicketNum(String ticketNum);

    void bindVideoByTaskId(Long taskId, String videoLoc);

    TaskPlanDateDto selectDaily(Date workTime, String sailings,String acceptNum, int page, int pageSize);

    List<DailyInfDto> selectDetailDailyInf(Date date);

    DailyInfDto selectDetailDailyInfToAccept(Long taskId);

    boolean saveTaskPlanWithIssued(TaskPlan taskPlan);

    DailyInfDto selectDetailInf(Long taskId);

    List<TaskPlan> selectListByUserId(Long userId);

    void changeTaskStatus(Long taskId,String status);
}
